package com.zp.self.module.level_4_算法练习.数学.数学推理;

/**
 * @author By ZengPeng
 */
public class 力扣_263_丑数 {
    public static void main(String[] args) {

        System.out.println(myAnswer(14));
    }
    /**
     * 题目：编写一个程序判断给定的数是否为丑数。
     *  * 丑数就是只包含质因数 2, 3, 5 的正整数。
     *
     * 分析：
     *      1.分别判断2  3  5取余数是否为0  为就除以  直到不为0  ，或者结果为0 时终止
     *      大师理解：先除2直到不能整除 之后一样
     *
     *      return n==1?true:false;
     *
     * 边界值注意：
     *      1.
     **/
    public  static  boolean myAnswer(int n){
        if (n<1) return false;
        while (n!=1){
            if(n%5 ==0)
                n = n/5;
            else if(n%3 ==0)
                n = n/3;
            else if(n%2==0)
                n >>=1;
            else break;
        }
        return n == 1;
    }
}
